for (terraform)
式の中で繰り返しを行う構文
主に新しいリストやマップを生成する目的で使う
リスト内包表記的
[for <ITEM> in <LIST> : <OUTPUT>]
リストの場合
各要素 v に 2 を掛けた新しいリストを生成する例
code:hcl
code:hcl(rb)
variable "values" {
}
output "double" {
}
code:結果
マップの場合
各値を大文字化した新しいマップを生成する例
code:hcl
{for k, v in var.map : k => upper(v)}
code:hcl(rb)
variable "map" {
default = {
dev = "alice"
prod = "bob"
}
}
output "upper" {
value = {for k, v in var.map : k => upper(v)}
}
code:結果 (rb)
upper = {
dev = "ALICE"
prod = "BOB"
}
条件付き
条件に一致する要素のみ抽出できる
code:hcl